package offline

import (
	lcli "github.com/filecoin-project/lotus/cli"
	"github.com/urfave/cli/v2"
)

var commonFlag = []cli.Flag{
	&cli.StringFlag{
		Name:  "format",
		Usage: "specify input format for key",
		Value: "hex-lotus",
	},
	&cli.StringFlag{
		Name:  "local-private-key",
		Usage: "local wallet private key file path",
	}, &cli.Uint64Flag{
		Name:  "nonce",
		Usage: "specify the nonce to use",
		Value: 0,
	},
	&cli.StringFlag{
		Name:  "miner-account",
		Usage: "specify the miner account to use",
		Value: "f01000",
	},
}

var Cmd = &cli.Command{
	Name:  "offline",
	Usage: "offline sign",
	Subcommands: []*cli.Command{
		lcli.WithCategory("offline-sign", MpoolCmd),
		lcli.WithCategory("offline-sign", SetOwnerCmd),
		lcli.WithCategory("offline-sign", WalletSign),
		lcli.WithCategory("offline-sign", WithdrawCmd),
		lcli.WithCategory("offline-sign", TerminateSectorCmd),
		lcli.WithCategory("offline-sign", ControlSet),
		lcli.WithCategory("offline-sign", BaseFeeCmd),
		lcli.WithCategory("offline-sign", SendCmd),
		lcli.WithCategory("offline-sign", actorProposeChangeWorker),
		lcli.WithCategory("offline-sign", actorConfirmChangeWorker),
	},
}
